﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SneakyWeasel.Engine
{
    [AttributeUsage(AttributeTargets.Class)]
    public sealed class SWPluginAuthor : Attribute
    {
        public SWPluginAuthor(string name)
        {
            Name = name;
        }
        public string Name { get; set; }
    }

    [AttributeUsage(AttributeTargets.Class)]
    public sealed class SWPluginDescription : Attribute
    {
        public SWPluginDescription(string desc)
        {
            Description = desc;
        }
        public string Description { get; set; }
    }


    [AttributeUsage(AttributeTargets.Property)]
    public sealed class SWPluginParam : Attribute
    {
        public SWPluginParam(string description, object defaultVal)
        {
            Description = description;
            Type = defaultVal.GetType();
            DefaultValue = defaultVal;
        }
        public string Description { get; set; }
        public Type Type { get; set; }
        public object DefaultValue { get; set; }
    }
}
